package com.zyh.scs.admin.api.utils;

import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSONArray;
import com.zyh.scs.admin.api.dto.RechargeBatchDTO;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;

/**
 * @author hwh
 * @ClassName: json转list实体类$
 * @Description: $
 * @Date $
 * @Version 1.0
 */
public class JsonToListUtil {

    /**
     * json转list实体类 批量充值
     *
     * @param json json数据
     * @return
     */
    public static List<RechargeBatchDTO> getJsonToList(String json) {
        JSONArray jsonArray = JSONArray.parseArray(json);
        List<RechargeBatchDTO> rechargeBatchDTOList = new ArrayList<>();
        for (int i = 0, len = jsonArray.size(); i < len; i++) {
            RechargeBatchDTO rechargeBatchDTO = new RechargeBatchDTO();
            rechargeBatchDTO.setGuid(jsonArray.getJSONObject(i).getString("guid"));
            rechargeBatchDTO.setUsername(StrUtil.isNotBlank(jsonArray.getJSONObject(i).getString("username")) ? jsonArray.getJSONObject(i).getString("username") : null);
            rechargeBatchDTO.setUserJobNumber(StrUtil.isNotBlank(jsonArray.getJSONObject(i).getString("userJobNumber")) ? jsonArray.getJSONObject(i).getString("userJobNumber") : null);
            rechargeBatchDTO.setPhone(StrUtil.isNotBlank(jsonArray.getJSONObject(i).getString("phone")) ? jsonArray.getJSONObject(i).getString("phone") : null);
            rechargeBatchDTO.setUserTypeName(StrUtil.isNotBlank(jsonArray.getJSONObject(i).getString("userTypeName")) ? jsonArray.getJSONObject(i).getString("userTypeName") : null);
            rechargeBatchDTO.setRechargeNumber(new BigDecimal(jsonArray.getJSONObject(i).getString("rechargeNumber")));
            rechargeBatchDTO.setRechargeType(jsonArray.getJSONObject(i).getString("rechargeType"));
            rechargeBatchDTO.setNotes(StrUtil.isNotBlank(jsonArray.getJSONObject(i).getString("notes")) ? jsonArray.getJSONObject(i).getString("notes") : null);
            rechargeBatchDTOList.add(rechargeBatchDTO);
        }
        return rechargeBatchDTOList;
    }
}
